对象和类
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
这个章节中我们主要学习类(Class)和对象(Object)这两个概念。
- Class - 我们可以把类看做模板,它定义了对象应具有的行为(behaviors)和状态(states)。
- Object - 对象是由类创建出来的实例,它具有行为和状态。例如:一只狗对象(Dog)的行为包括:摇尾巴(wagging)、汪汪叫(barking)、吃东西(eating),而它的状态则包括:颜色(color)、名字(name)、品种(breed)。
Java中的对象
现在我们来深入看一看对象到底是什么?在现实生活中我们可以在周围找到很多对象,例如:汽车、狗、鼠标等等。所有的对象都具有状态和行为。 如果我们以一只狗作为例子,那么它的状态可以是:颜色(color)、名字(name)和品种(breed),而对应的行为可以是:摇尾巴(wagging)、汪汪叫(barking)和吃东西(eating)。 因此我们可以想象,软件世界里面的对象与现实生活中的对象是非常相似的。软件世界里面也存在状态和行为,软件中状态存在属性(properties)中,而行为则是通过方法(methods)来体现的。我们可以通过行为修改对象的状态,而对象之间也可以通过方法的调用实现互相通讯。
Java中的类
我们可以把类看作模板,通过这个模板我们可以创建出很多独立的对象。 现在我们还是以狗作为例子看看如何定义一个Dog类。
public class Dog {
String breed;
int age;
String color;
void barking() {
}
void eating() {
}
void wagging() {
}
}
在一个类中我们可以定义以下三种类型的变量:
- 本地变量(Local variables) - 方法、构造函数或区块中定义的变量我们称之为本地变量,这类变量在方法体中被定义和初始化,在方法结束时被销毁。
- 实例变量(Instance variables) - 在类中(方法体外)定义的变量我们称之为实例变量,当我们创建对象时这类变量被初始化,我们可以在类的方法、构造函数或区块中访问它们。
- 类变量(Class variables)- 在类中(方法体外)使用static关键词定义的变量我们称之为类变量。
在一个类中我们也可以定义许多方法,在上面的例子中barking()
、eating()
和wagging()
都是方法。
在线练习
{$ activeFileHint $}